#include"mainsetp.h"/*包含头文件，公共路径设置，常量设置*/
#include"mainfunction.h"/*包含全部函数*/
/**
   *后台程序主程序，到BAC（resource内）
   *并交于do_backcheck程序检测.同时可以并行处理MAX_TEST_NUM条代码最后将检测结果报存在result文件夹内或者屏幕输出
   *详细参数设置在mainsetp.h
*/
 int main()
{   
   NowStartNum=0;//初始化当前运行进程为准0
   IsStart=1;//用于控制服务开启
   IsDestroy=0;//是否终止程序   
   printf("severce now start.type 'soj stop' to stop，'soj start' to continue , 'soj destroy'to exit\n");
 

   pthread_t backctrl;//创建后台控制线程
   pthread_attr_t a; //线程属性
   int err;
   pthread_attr_init(&a);  //初始化线程属性
   pthread_attr_setdetachstate(&a, PTHREAD_CREATE_DETACHED);//线程属性线程并行
   err = pthread_create(&backctrl,&a,backCtrl,NULL);
    
    //创建后台控制线程，控制服务开启终止
   if(err != 0){
   printf("{'msg':'can't create thread: %s'}",strerror(err));// 如果创建失败返回
   return;  
   }

 while(IsDestroy==0){//控制是否结束整个程序

    	 while(IsStart==1)
   	 {
         
    	     if(checkdir()==0){//开始检测checktask目录
            printf("{'msg':'can't open the codesource'}");//无法找到checktask目录系统错误
            return 0;
               }
              sleep(5);//一轮检测完毕后暂停钮秒在扫描
       }
      
   }
   return 0;
}


